package kz.pompei.ifacer.model.widgets;

import java.io.PrintStream;
import java.util.UUID;

public class WidgetGrid extends WidgetRect {
  public String widths;
  public String contents;
  
  @Override
  protected void printFields(int offset, PrintStream out) {
    super.printFields(offset, out);
    String s = space(offset);
    out.println(s + "<contents><![CDATA[" + contents + "]]></contents>");
    out.println(s + "<widths><![CDATA[" + widths + "]]></widths>");
  }
  
  public WidgetGrid(UUID uuid) {
    super(uuid);
    init();
  }
  
  private void init() {
    StringBuilder sb = new StringBuilder();
    sb.append("H Заголовок 1|Заголовок 2|Заголовок 3").append("\n");
    sb.append("  Строка 1-1 |Строка 1-2 |Строка 1-3 ").append("\n");
    sb.append("S Строка 2-1 |Начинается новый день, и машины туда-сюда.|Строка 2-3 ").append("\n");
    sb.append("  Строка 3-1 |Строка 3-2 |Строка 3-3 ").append("\n");
    sb.append("S Строка 4-1 |Строка 4-2 |Строка 4-3 ").append("\n");
    sb.append("  Строка 5-1 |Строка 5-2 |Строка 5-3 ").append("\n");
    sb.append("  Строка 6-1 |Строка 6-2 |Строка 6-3 ").append("\n");
    sb.append("  Строка 7-1 |Строка 7-2 |Строка 7-3 ").append("\n");
    sb.append("  Строка 8-1 |Строка 8-2 |Строка 8-3 ").append("\n");
    sb.append("  Строка 9-1 |Строка 9-2 |Строка 9-3 ");
    contents = sb.toString();
    widths = "80,120";
    width = 350;
    height = 200;
  }
  
  public WidgetGrid() {
    init();
  }
  
  @Override
  public Widget copy() {
    WidgetGrid ret = new WidgetGrid(uuid);
    assignTo(ret);
    return ret;
  }
  
  @Override
  public void assignTo(Widget widget) {
    checkWidget(widget, getClass());
    super.assignTo(widget);
    WidgetGrid w = (WidgetGrid)widget;
    w.contents = contents;
    w.widths = widths;
  }
}
